/**
 * 所有版权归 广西梧州 陈锦韬 所有
 *
 * @Title: ActReProcdef
 * @Package com.rx.camunda
 * @Description: 流程定义表
 * @author: 陈锦韬
 * @date: 2021\8\14 0014
 * @version V1.0
 * @Copyright: 2021 陈锦韬  All rights reserved.
 */
package com.rx.camunda.vo;

import com.alibaba.fastjson.annotation.JSONField;
import com.rx.camunda.vo.iface.ExecutionFlowInfo;
import com.rx.core.base.RxBaseConstant;
import com.rx.core.base.RxBaseData;
import com.rx.core.data.RxData;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

import java.util.Date;

/**
 * @author: Administrator
 * @Description: 流程定义表
 * @date: 2021\8\14 0014
 */
@RxData
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
public class ActRuTask extends RxBaseData implements ExecutionFlowInfo {

    String bid;

    Integer ver;

    Integer suspensionState;

    String tenantId;


    String rootProcessInstanceId;

    String processInstanceId;

    String processDefinitionId;

    String processDefinitionName;

    String executionId;

    /**
     * 流程名称
     */
    String name;

    String parentTaskId;

    /**
     * 待办节点
     */
    String description;

    String taskDefKey;

    String owner;

    String assignee;
    @JSONField(format = RxBaseConstant.DATE_FORMAT_DATETIME)
    Date dueDate;
    @JSONField(format = RxBaseConstant.DATE_FORMAT_DATETIME)
    Date followUpDate;

    /**
     * 流程版本标志
     */
    String versionTag;
    /**
     * 流程主题
     */
    String topic;
    /**
     * 流程类型
     */
    String flowType;
    /**
     * 流程业务类型
     */
    String bizType;

    Integer version;

    @Override
    public void assignInstanceName(String name) {
        this.name = name;
    }

    @Override
    public void assignInstanceVersionTag(String tag) {
        this.versionTag = tag;
    }

    @Override
    public void assignInstanceVersion(Integer version) {
        this.version = version;
    }
}
